Programación de un robot con Pick & Place
Ver el Robotics_PickAndPlace.project
y Robotics_PickAndPlace_without_Depictor.project
proyectos de muestra en el directorio de instalación de CODESYS por debajo ..\CODESYS SoftMotion\Examples
.
los Robotics_PickAndPlace.project
proyecto requiere la CODESYS Depictor Paquete Depictor a instalar. Este proyecto muestra la cinemática en una animación 3D. El proyecto Robotics_PickAndPlace_without_Depictor.project
muestra una forma simplificada de la secuencia en una pantalla de visualización.
Este capítulo cubre solo los objetos que son relevantes para SoftMotion.
El ejemplo consta de un trípode, una mesa giratoria y un transportador. La cinemática recoge un anillo que se encuentra en la mesa giratoria. Al recoger, la placa de herramientas de la cinemática se mueve sincrónicamente con la mesa giratoria. Luego, el anillo se coloca en un cono que se encuentra en una cinta transportadora. Al colocar, la cinemática se mueve sincrónicamente con la cinta transportadora. En la pantalla de visualización hay dos botones para controlar la secuencia. Cuando presiona el Auto botón, los anillos se colocan automáticamente. De lo contrario, el Jugar Aparece el botón para que coloques el anillo. | ![]() |
Estructura del proyecto
CODESYS SoftMotion Controlador
Grupo eje Trípode: El grupo de ejes define la cinemática y el mapeo a los ejes individuales Trípode1, Trípode2, y Trípode3.
DepictorCalculations (PRG), Medio ambiente (PRG), Anillo (FB): Programas para controlar la secuencia completa y la visualización. Estos POU no son relevantes para comprender los bloques PLCopen, excepto la definición del sistema de coordenadas del producto (PCS_1 y PCS_2).
Robot (PRG): Programa para controlar las secuencias de movimiento. Una descripción detallada se encuentra en el siguiente párrafo.
Visualización: Visualización animada para aclarar la secuencia.
Trípode1, Trípode2, Trípode3: Ejes lineales del trípode.
DriveRotaryTable: Eje de la mesa giratoria.
DriveConveyorCinturón: Eje para la cinta transportadora.
Estructura del programa secuencial del Robot (PRG)
los Robot (PRG)
El programa se ejecuta en ciclos. En este momento, los pasos individuales se realizan según el state
. Al final de un programa, las llamadas de todos los bloques de función utilizados están listas para el comando de movimiento.
Se activan los ejes individuales del trípode (bloques de función
pwA1
,pwA2
, ypwA3
de tipoMC_Power
).CASE 0
: Espere a que los ejes participantes estén operativos.CASE 10
: Establece posiciones de inicio; En aplicaciones físicas, el homing se realiza en esta posición (bloques de funciónspA1
,spA2
, yspA3
de tipoMC_SetPosition
).CASE 20
: Colocación del sistema de coordenadas de la máquina en el sistema de coordenadas mundial (bloque de funciónsetCoord
de tipoMC_SetCoordinateTransform
).CASE 30
: Liberación del grupo de ejes (bloque de funcionesenable
de tipoMC_GroupEnable
.Espere una respuesta de que el grupo de ejes ha aplicado todos los valores.
CASE 40
paraCASE 130
: Aplicación Pick & Place: todos los movimientos se ordenan posiblemente con múltiples instanciasMC_MoveDirectAbsolute
,MC_MoveDirectRelative
, yMC_MoveLinear
que se llaman en ciclos. Un borde ascendente en elExecute
La entrada de estas POU en cada estado conduce a la emisión de un nuevo comando de movimiento en el que la salidabCommandAccepted
indica el éxito del proceso. Una cadena típica de comandos resulta de interrogar esta salida antes del siguiente comando de movimiento.
Bloques de funciones: MC_TrackConveyorBelt y MC_TrackRotaryTable
El MC_TrackRotaryTable
bloque de funciones, que se llama en el Ring
bloque de funciones, se utiliza para determinar el PCS_1
sistema de coordenadas parciales. Este sistema de coordenadas se establece cuando se coloca un anillo en la mesa giratoria.
El origen del sistema de coordenadas de la mesa giratoria RotaryTableOrigin
es el punto medio de la mesa giratoria. El eje Z es el eje giratorio de la mesa giratoria. El PCS_1 gira alrededor del eje Z del sistema de coordenadas de la mesa giratoria en función de la variable de entrada RotaryTable
. Dado que el grupo de ejes se mueve en PCS_1, sigue la rotación de la mesa.
El comportamiento es similar al MC_TrackConveyorBelt
bloque de funciones, que se llama en el Cone
bloque de funciones En este caso, el PCS (PCS_2
) sigue el eje X del sistema de coordenadas ConveyorBeltOrigin
.